package com.tsd.base.dao;

import com.tsd.base.entity.BaseInvoiceInfo;
import com.tsd.base.entity.BaseInvoiceInfoExt;
import com.tsd.core.vo.PageBean;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 描述：BaseInvoiceInfoMapper
 *
 * @author Hillpool
 * @date 2022/11/04 18:14:10
 */
public interface BaseInvoiceInfoMapper {

    BaseInvoiceInfo selectByPrimaryKey(Long id);

    BaseInvoiceInfoExt selectBySid(String sid);

    int deleteByPrimaryKey(Long id);

    int insert(BaseInvoiceInfo record);

    int insertSelective(BaseInvoiceInfo record);

    int insertList(@Param("list") List<BaseInvoiceInfoExt> list);

    int updateByPrimaryKey(BaseInvoiceInfo record);

    int updateByPrimaryKeySelective(BaseInvoiceInfo record);

    int updateList(@Param("list") List<BaseInvoiceInfoExt> list);

    List<BaseInvoiceInfoExt> selectByEntity(BaseInvoiceInfoExt record);

    List<BaseInvoiceInfoExt> selectByPage(@Param("params") Map<String, Object> params, @Param("page") PageBean page);

    List<BaseInvoiceInfoExt> selectCount1Page(@Param("params") Map<String, Object> params, @Param("page") PageBean page);

    List<BaseInvoiceInfoExt> selectByParams(@Param("params") Map<String, Object> params);

    BaseInvoiceInfoExt queryByOwnerSid(@Param("owner_sid") String owner_sid, @Param("dr") int dr);

}